home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Software of the Month Club 1996 August
/
Software of the Month Club 1996 August.iso
/
pc
/
dos
/
dtp
/
dta
/
dta.doc
< prev
next >
Wrap
Text File
|
1996-02-23
|
38KB
|
997 lines
DTA (Dave's .TGA Animation Program)
Rel 2.2 (02/24/96)
Copyright (c) 1991 through 1996 by David K. Mason
---------------------------------------------------------------------
(note: If you use DTA very often, then you should check out
the file whatsnew.dta. It usually contains some info I forgot to
put in here. It also contains more detailed descriptions of some
functions, and occasionally a discussion of my reasons for some
design decisions.)
DTA is a command-line utility for creating Autodesk Animator .FLI
and .FLC animation files from:
o .TGA files
o .PNG files
o .JPG files (if the Independent JPEG Group's CJPEG and DJPEG
programs are present for DTA to shell to)
o .IMG files (created by the Vivid/Bob ray-tracer)
o .PCX files.
o some .TIF files
o .DIB or .BMP files
o USGS .DEM, .BIL, and .30S elevation files. (*NOT* Vistapro
DEM files which use a proprietary compression scheme)
o Other .FLI or .FLC files.
o VistaPro .VAN animation files
o Presidio .ANI animation files
o RAW animation files produced by Stefan Eckart's
DMPEG program.
DTA does not support Compuserve's GIF format anymore because
of Unisys's new licensing plan for LZW compression. (See
WHATSNEW.DTA for more of my whining about Unisys.)
DTA can also perform a wide range of post-processing functions
on image files including:
o Create a single optimal 256-color palette from a series of
truecolor pictures, and then creating an flic (FLI or FLC)
animation file out of them.
o Read in a palette file in either .COL or .MAP format
and animating a bunch of pictures using that palette.
o Append new frames to existing flic, using the palette from
that flic file.
o Build (or append to) a hicolor (16384- or 32768-color)
FLH file, or truecolor (16777216-color) FLT file.
o Create a palette as a .MAP (PICLAB, FRACTINT) or .COL
(Autodesk Animator) palette file.
o Convert pictures to a bunch of different still image formats.
o Arbitrary rotation.
o Scaling.
o Tiling.
o Multi-layer compositing.
o Averaging images together for a variety of effects, including
fades, simulated motion blur, and red/blue 3D.
o Lots more.
======================================================================
**** IF YOU ARE HAVING MEMORY PROBLEMS WITH DTA, READ THIS ****
Real mode vs. Protected mode:
DTA used to come in two varieties: a real mode version and
a protected mode version. From now on there's only a
protected mode version. There's no more DTAX.EXE as there
was in versions prior to release 2.0.
DTA will let you access extended memory (either raw or configured
as XMS with HIMEM.SYS or QEMM386.SYS or whatever).
It requires at least 1 or 2 MB of RAM to run at all.
Don't delete the files DPMI16BI.OVL, RTM.EXE, and DPMIINST.EXE.
These make up the protected mode drivers for Borland Pascal 7.0
(the compiler used to build DTA). DTA won't run without them.
If you have versions of DPMI16BI.OVL and RTM.EXE that were
provided with other Borland products (Borland C++, Paradox)
they may conflict and prevent DTA from running. You can prevent
this by changing your DOS path so that the directory containing
the ones provided with DTA comes before the directory that
contains the other ones.
======================================================================
Operating under Windows 3.1
To run DTA in Windows, you should use a DOS box. You'll probably
need to edit the DOSPRMPT.PIF file using Windows' PIFEDIT program
to get Windows to give DTA enough memory to operate properly. By
default, Windows only provides 1024K of XMS to a DOS window.
That's enough for DTA to execute, but not enough for DTA to
actually get anything accomplished.
Change the XMS memory KB limit to a nice high number like 8000
to give DTA some room to breathe.
======================================================================
Operating under OS/2
To run DTA in OS/2, you should use the OS/2 "DOS Full Screen"
icon. You'll probably need to use the Settings dialog for this
icon to give DTA enough memory to operate properly. Set the
XMS_MEMORY_LIMIT value to a nice high number like 8000.
======================================================================
Operating under Windows 95
To run DTA in Windows 95 you should use the MSDOS Prompt Icon
on the taskbar. If you have "Out of memory" problems with DTA,
you might have to edit this icon's Properties. On the Memory tab,
put a nice high number (like 8000) in the "MSDOS protected mode
(DPMI) memory" box.
When run from the MSDOS Prompt window, DTA does support Windows
95 long filenames for input files, like so:
dta alongfilename.tga
or
dta "a long file name.tga"
or
dta longfilenames*.tga
You must use quotes if there are spaces imbedded in the filename.
Long filenames will *not* work in output filenames. If you
specify /ft /olonglongfilename.tga, DTA will create a file called
"LONGLONG.TGA". If you use a long input filename and let DTA
come up with its own output filename based on the input filename,
like this this:
dta LongFilename.Tga /fpng
then DTA will use the short equivalent of the input filename
when creating the output filename. It will be something like
"LONGFI~1.PNG", not "LongFilename.Png".
Note: Long filenames only work if you're running in a DOS window.
If you reboot in MSDOS mode, yer outta luck.
======================================================================
The Rules:
Feel free to re-upload this program to other bulletin board
systems, FTP sites, etc., in its *original, unmodified* form.
You may not repackage it with other programs. You may not
repackage it with your own tutorial. I feel like an idiot
having to make these demands, but I've been finding archives
on BBSs going by names like MORPHPAK.ZIP which are collections
of DTA, my other program DMorf, sometimes also Richard Godoeken's
program RMORPH, plus Trilobyte's PLAY. That's not kosher. I and
those other folks distributed our programs the way we did for
reasons.
Do not include this program on a disk along with any magazine,
book, hardware product, or other software product without my
permission.
I claim no rights over any animations or pictures that you
create using DTA.
======================================================================
Money matters:
DTA is a shareware program. If you think this program is worth
it, send some money or some computer hardware or something to:
David K. Mason
P.O. Box 181015
Boston, MA 02118
I think $35 is an appropriate amount, but feel free to send more
or less.
If you use Compuserve, you may register DTA online using the
SWREG service. DTA's SWREG ID is #2801.
======================================================================
Blatant shameless plugs:
Other shareware programs:
o Dave's Morphing program (DMorf), the first shareware morphing
program for the PC.
o Dave's Flic Viewer (DFV), an animation player that can
handle DTA's FLH and FLT files in addition to conventional
FLI and FLC files. (This program is also provided as part
of the DTA package.)
o Dave's Self-Viewing Flic Builder (BUILDSV), which
converts flics into executable programs by appending a
copy of the flic to a special version of DFV.
(This program is also provided as part of the DTA package.)
----------------------------------------------------------------------
For more information on using DTA and related programs,
see my books:
"Making Movies on Your PC" (by David K. Mason and Alexander
Enzmann, Waite Group Press, $34.95 USA, ISBN 1-878739-41-7)
covers the creation of 3D animation sequences using Polyray
and DTA. The DTA reference info is up to date through
release 1.8g.
"Morphing on Your PC" (by David K. Mason, Waite Group Press,
$29.95 USA, ISBN 1-878739-53-0) covers building animated
morph sequences with DMorf and DTA. The DTA reference info
is up to date through release 2.0, and covers some important
topics (like image composition) in greater detail than they're
covered in this document.
======================================================================
Syntax:
Syntax: DTA (filenames) (options)
======================================================================
Input Formats:
.TGA Targa 8-,16-,24-,32-bit compressed/uncompressed.
.PCX PC Paintbrush 256-color or 24-bit PCX images.
.DIB/.BMP Microsoft Windows device-independent bitmap files.
.IMG Vivid raytracer 24-bit RLE output.
.FLI and
.FLC Autodesk Animator/Animator Pro animation files.
.VAN VRLI VistaPro 256-color animation files.
.ANI Presidio PC Animate Plus animation files.
.RLE MindImage 2 SIRDS run-length encoded depth
files.
.DEM USGS elevation map files. (Not the Vistapro type)
.30S Another elevation map format.
.BIL Another elevation map format.
.LZH LHArc compressed archive containing files in the above
picture formats.
.ZIP PKZIP compressed archive containing files in the above
picture formats.
@script Process all files listed in a text file called
"script.SCR".
To specify a particular picture in an archive:
"ARCHIVE.ZIP:PICTURE.TGA".
To specify particular frames in an animation:
"ANIM.FLI:first[,last]".
======================================================================
Switches:
(Filename options)
/O(name) Specify output filename
/FO[#[,#]] Always save to the original filename
(Output format options)
By default, DTA will create a flic (.FLI/.FLC/.FLH/.FLT) animation
file. Which type depends on the resolution and color depth that
you select. 320x200 256-color flic will be saved in .FLI format.
For any other resolution, in 256-color, DTA will build a .FLC
file. 15- and 16-bit color depth will cause DTA to build a
.FLH file, and 24-bit color depth will result in a .FLT file.
Specify a different format with one of these switches:
/FT (Truevision Targa, .TGA)
/FB (Windows Bitmap, .BMP)
/FM (.MAP palette)
/FR (MindImage, .RLE)
/FP (ZSoft, .PCX)
/FD (Windows Bitmap, .DIB)
/FC (.COL palette)
/FI (Tagged Image Format, .TIF (grayscale, uncompressed only))
/FJ (JPEG,.JPG)
/FV (.VAN animation)
/FPNG (Portable Network Graphics, .PNG)
(Output resolution options)
By default, DTA will create output files with the same dimensions as
as the input pictures. When creating an animation, it will use the
dimensions of the first input picture.
This is sometimes undesirable, as when you''ve got multiple pictures
of different sizes, or when you''re compositing pictures.
So, you can override this with one of these switches:
/R# specify output resolution:
(1) 320x200
(2) 320x240
(3) 320x400
(4) 320x480
(5) 360x480
(6) 640x480
(7) 640x400
(8) 800x600
(10) 1024x768
(12) 1280x1024
/R#,# specify resolution exactly
(Misc. output options)
/B## bits per pixel. Legal values and *defaults*:
TGA: 1 8 15 *24* 32
PNG: 8 16(grayscale) *24* 32
flics: 1/*8*/15/16/24
PCX: *8* 24
BMP/DIB: 8 *24*
all others: 8
(Flic output options)
/FLAP append new frames to existing flic
/FLC build .FLC even when the size is 320x200 (8-bit only)
/FLX build a Tempra .FLX file instead of default .FLH (16-bit
only)
/P ping-pong
/Snnn specify display speed of animation; default=0
/TO# (flic tolerance) causes DTA to ignore pixel differences
between frames when the distance in color-space is less
than or equal to a value that you supply.
/TX# Include a complete, no-tolerance frame once every
# frames. (use only in conjunction with /TO)
(/TO and /TX work only with FLT and FLH files)
/EO "even-odd" compression
/BA use rle compression instead of delta if it makes
a frame smaller
(.TGA output options)
/NC don''t compress .TGA files
/BU save .TGA files bottom-up instead of top-down
(.PNG output options)
/PB use best filter for each picture. This is very
slow, because DTA must save each picture 5 times
to see which filter creates a smaller file than
the rest
(Palette options for colormapped output)
/G Use greyscale instead of a palette.
This will be a 256-level grayscale in formats
which really support grayscale images (like TGA,
PNG, and TIF) or a 64-level grayscale for formats
which allow it to be faked using a palette
(like flic, PCX, etc.)
/G32 Use 32-level greyscale instead of a palette.
(there's also a /G128, /G64, /G32, /G16, /G8,
and /G4)
/G represents a 256-level grayscale except when
the output format is a 320x200 .FLI file, when it
represents a 64-level grayscale. That's because
.FLI won't support higher than 64 shades.
/G128 represents a 128-level grayscale, /G64 a
64-level grayscale, etc.
Most VGA and SVGA monitors can only display 64
shades of gray except in 24-bit modes, so it's
wasteful to use more than that if your picture will
only be displayed on a monitor. Some laptop VGA
displays can only display 32 shades.
If you're going to be printing your image or using
it as a bump map or height field with a rendering
program, then the more shades the better.
/332 Use 3/3/2 palette.
/Upalname Use existing .MAP or .COL file for palette.
/M# Set maximum colors.
/NM Do NOT remap colormapped input.
/PO Force single optimal palette generation even when
creating single-image files.
/C# Scan only one frame per # for palette.
/RO Generate palette using octree color reduction
instead of median cut
(Frame averaging options)
/A[#|A] Average <number> TGAs per output frame (A=All)
/T[#|A] Trail <number> TGAs per output frame (A=All)
/X[num] eXpand <number>. Create and insert <number> averaged.
frames between each pair of regular frames
/XL apply expansion after the final frame
/WF weight of first frame (default=1)
/WI weight increment (default=0)
/FA use fast averaging for /X, /T, and /A. It uses less
memory.
(Fades, etc.)');
/FADE# Fade between two images for # frames
/REP# Repeat a frame # times
(Dithering options)
/DF dither with Floyd-Steinberg filter
/DS dither with Sierra Lite filter
/DO[#] Ordered dither; digit represents dither strength
/DR[#] Random noise dither (uses the same random-number
seed at the beginning of each frame to help
delta compression)
/DN[#] Alternate random noise dither (uses a different
random-number seed at the beginning of each
frame, and a different seed for each color channel
... this dither compresses very badly but looks
more "noisy" in an animation)
(Composition options)
/L Separates image layers. Picture files specified
in later layers get overlayed on top of previous
layers. If the overlayed pictures contain
transparency information (32-bit TGA files only),
then the pictures underneath will show through.
/CK#,#,# Chroma-key, to make all occurrences of a color
transparent for compositing. The three numbers
represent the red,green, and blue components
of the key color
/CI#,#,# inverse chroma-key... make all colors other than
the one specified transparent
/CA additive composition. Tells DTA to add colors
when compositing a layer instead of overlaying
them. This is useful for glare effects, and
probably also for spooky ghost-like effects.
Sometimes this effect makes the foreground
image look too bright... this might be a good
occasion to adjust the brightness of the
image using the /GA (gamma-correction) feature
/CT# Chroma-key tolerance. Specifies how close to the
key color a pixel has to be to make it transparent.
/CC#,#,#,# chroma-key color... specify an RGBa value to replace
chroma-keyed pixels with (default=0,0,0,0)
/ALPHA, /RED, make a grayscale image from a picture''s alpha channel,
/GREEN, /BLUE or from one of the color channels.
(Tiling)
/TILE# Tile images # by #
/TILEX# Tile images horizontally, # per picture
/TILEY# tile images vertically, # per picture
(Geometrical transformation options)
/CL#,#[,#,#] Clip the input picture. The first two numbers
specify the top-left, and the other two numbers
control the width and depth.
/CLP#,#[,#,#] clip from top-left (after scaling)
/LOC#,#[,#] specify where to place image (default is 0,0)
The final number specifies time
/LT Make /LOC base vertical coords from the top edge
instead of the center.
/LB Make /LOC base vertical coords from the bottom edge.
/LL Make /LOC base horizontal coords from the left edge
instead of the center
/LR Make /LOC base horizontal coords from the right edge
/ROT#[,#] rotation... first number represents angle, second
is for time
/SC[#,#[,#]] rescale pictures to screen res. or specified size
/SCF[#,#[,#]] fast, but dumb, rescale
(Other options that I don''t know how to classify)
/K# Use only one frame per # picture files. Skip the
rest.
/I[#] process a total of # picture files
/GA# Adjust brightness using gamma function.
Try specifying a number
between 1.0 and 2.0 to brighten, between 0.5 and
1.0 to darken.
/INV[R,G,B,A] invert colors or individual color channel
/FLD "Fieldify" images
/FLDE "Fieldify" images, swap even/odd
======================================================================
Scripts:
As I mentioned earlier, you tell DTA to process all the files
listed in a text file by specifying the name of the text file
preceded by a "@".
A script file can contain as many file specifications
as you want. It can also contain any of the above-mentioned
switches. Each must be on a line of its own.
Here's an example script called test.scr:
back.tga
/l
*.tga
/a2
/sc640,480
/l
signat.pcx
/lr
/lb
/fo2
Typing "dta @test" in this case would cause DTA to perform
exactly the same as if you instead typed:
dta back.pcx /l *.tga /a2 /sc640,480 /l signat.pcx /lr /lb /fo2
Scripts can come in handy if
(a) your command is just getting too darn long and
complicated to fit on a DOS command line. A script can
be as long as you want.
(b) you have to use the same command over and over
again. Why remember all that stuff or use a crib sheet
when you can just put it all in a script just once
and then use it over and over.
You can also use a script in addition to other filenames
and switches:
Say you had a script file called whirl.scr that looked like
this:
/l
logo.pcx
/rot0,0
/rot360,100
/ch0,0,0
/loc400,350
then instead of typing
dta x*.tga /l logo.pcx /rot0,0 /rot360,100 /ch0,0,0 /loc400,350
you could just type:
dta x*.tga @whirl
======================================================================
Revision History:
(see WHATSNEW.DTA)
======================================================================
Averaging/Trailing/Expansion modes (/A /T /X switches) examples:
Averaging 5 input pictures with "/A2" option:
Average: To produce:
file 1 frame 1
file 2
file 3 frame 2
file 4
file 5 frame 3
file 1
Trailing 4 input pictures with "/T2" option:
Average: To produce:
file 1 frame 1
file 2
file 2 frame 2
file 3
file 3 frame 3
file 4
file 4 frame 4
file 1
Trailing 5 input pictures with "/T3" option:
Average: To produce:
file 1 frame 1
file 2
file 3
file 2 frame 2
file 3
file 4
file 3 frame 3
file 4
file 1
file 4 frame 4
file 5
file 1
file 5 frame 5
file 1
file 2
Expanding 2 input pictures with "/X1" option:
frame 1 = (100% of FILE 1 ) + ( 0% of FILE 2 )
frame 2 = ( 50% of FILE 1 ) + ( 50% of FILE 2 )
frame 3 = ( 0% of FILE 1 ) + (100% of FILE 2 )
Expanding 2 input pictures with /X2" option:
frame 1 = (100% of FILE 1 ) + ( 0% of FILE 2 )
frame 2 = ( 66% of FILE 1 ) + ( 33% of FILE 2 )
frame 3 = ( 33% of FILE 1 ) + ( 66% of FILE 2 )
frame 4 = ( 0% of FILE 1 ) + (100% of FILE 2 )
======================================================================
Tiling
Let's say you have a bunch of images and you want to combine them
into a smaller number of images without any overlaying. The /tile,
/tilex, and /tiley switches will let you do that.
If you type this:
dta *.tga /tile3 /ft /otiled /r640,480
Each output image will consist of 9 input images, tiled 3 by 3.
Each image will be rescaled such that the tiled result fits in
640 by 480 pixels.
If you do not specify an output resolution then one will be
selected for you and it might not be what you want: DTA will
figure out the dimensions of the first input image, and multiply
that by 3 in both directions. So *don't* forget to specify
an output resolution.
dta *.tga /tilex2
will cause DTA to tile two images horizontally to create each
output image.
dta *.tga /tiley10
will cause DTA to tile ten images vertically to create each
output image.
dta *.tga /tilex2 /tiley10
will cause DTa to tile two images horizontally and ten images
vertically (combining twenty input images) to create each
output image.
======================================================================
Miscellaneous examples:
(Note: some of these examples, especially the ones near the
very end, are ridiculous... you'd never actually have a use for
exactly those combinations of switches. They're there to
give you an idea of what weirdness you can achieve by
mixing and matching DTA's assorted abilities.)
(Note 2: This section could use some more examples... if
you've got a favorite combination, let me know and I'll add
it to this doc.)
----------------------------------------------------------------------
DTA ROCKET*.TGA
Create an 8-bit (256-color) flic file (.FLI or .FLC) from a bunch
of .TGA files.
----------------------------------------------------------------------
DTA ROCKET*.TGA /B16
Create an 16-bit flic file (.FLH) from a bunch of .TGA files.
----------------------------------------------------------------------
DTA ROCKET*.TGA /B24
Create an 24-bit flic file (.FLT) from a bunch of .TGA files.
----------------------------------------------------------------------
DTA ROCKET*.TGA /FC /OROCKET
Make a palette for all .TGA files starting with "ROCKET".
Output the palette to an Animator palette file called "ROCKET.COL".
----------------------------------------------------------------------
DTA SKY.PCX /L BEFORE.TGA MORF*.TGA AFTER.TGA
Build a multilayer flic. SKY.PCX gets put in the background, and
the pictures FIRST.TGA, a bunch of TGAs beginning with the string
MORF, and LAST.TGA get superimposed over it. SKY.PCX shows through
any parts of the other pictures which are transparent.
(32-bit TGA files can contain a transparency value for each
pixel called an "alpha channel".)
This example assumes that the pictures BEFORE.TGA and AFTER.TGA
had transparency added to them with my other program, DMorf
(Rel. 1.1 or higher), and that the MORF*.TGA files are morphed
pictures built with DMorf.
----------------------------------------------------------------------
DTA ROOM.TGA /L GUY*.TGA /L WINDOW.TGA
Another multilayer flic. The first layer is an image of a room
in a house. The second layer contains a series of a man walking
across the screen. Let's assume that the background of these
images has been matted out with an alpha channel so that the
walking dude is all that shows. (This could be accomplished
by recording the person walking in front of a blue or green
screen and then using chromakey to erase the screen.)
The third image is an outside view of a window. The window frame
and the building wall around it are opaque, but the window pane
itself is transparent.
The result is an animation of a person inside the room walking
past the window.
----------------------------------------------------------------------
DTA ROOM.TGA /L GUY*.TGA /CA /L WINDOW.TGA
Let's turn the last example into a scene from a horror story.
By using additive composition, the guy walking past the
window looks more like a ghost. The background shows through
his body and he acquires a kind of glow.
----------------------------------------------------------------------
DTA PIC1 PIC2 PIC3 /FM /OXYZ
Make a palette for .TGA files "PIC1.TGA", "PIC2.TGA", and "PIC3.TGA"
Output the palette to a PICLAB palette file called "XYZ.MAP".
----------------------------------------------------------------------
DTA ROCKET* /OROCKET /DF
Make input from all .TGA files beginning with "ROCKET".
Output to an animation file called "ROCKET.FLI".
Dither the frames with Floyd-Steinberg error-diffusion.
----------------------------------------------------------------------
DTA ROCKET* /G /DO2 /P
Make input from all .TGA files beginning with "ROCKET".
Map colors to grayscale.
Dither, using ordered dither strength 2.
Ping-pong it.
Output to an animation with the default name of "ANIM.FLI"
----------------------------------------------------------------------
DTA ROCKET
Make input from ROCKET.TGA.
Output to an animation with the default name of "ANIM.FLI".
----------------------------------------------------------------------
DTA @WING2.LST /S10 /OWING2.FLI
Make input from files listed in a text file called "WING2.LST".
Set playback speed to "10".
Output to an animation with the name of "WING2.FLI".
----------------------------------------------------------------------
DTA BBB*.TGA AAA*.TGA /UPAL1.COL /UPAL2.MAP /OFRED
Make input from all .TGA files whose name begins with "BBB", and "AAA".
NOTE:
The "BBB" files will appear in the animation before the "AAA" files.
The "BBB" files will be sorted alphabetically, and so will the
"AAA" files, but separately.
Read in an Animator palette file called "PAL1.COL", and merge it with
a Piclab palette file called "PAL2.MAP".
Use this combined palette for the animation.
Output to an animation with the name of "FRED.FLI".
----------------------------------------------------------------------
DTA *.TGA /FP
Make .PCXs from all .TGAs in the current directory.
----------------------------------------------------------------------
DTA SOMBRERO /FP /DR2 /G
Make a dithered grayscale .PCX from a file called SOMBRERO.TGA.
----------------------------------------------------------------------
DTA /CHR LEFT*.TGA /GA0.8 /CHB RIGHT*.TGA
Make a red/blue 3D .FLI file.
Use greyscale versions of the .TGA files beginning with "LEFT" as
the red component and of the ones beginning with "RGHT" as the blue
component.
NOTE: For this to work right, there must be an equal number of
"LEFT" and "RGHT" .TGAs.
(the /ga is to adjust the brightness of the red component
so it doesn't drown out the blues. Some experimentation
may be necessary to get the balance just right... if
somebody comes up with a better brightness combination,
let me know and I'll put it right here in the doc.)
Output to an animation with the default filename of "ANIM.FLI"
----------------------------------------------------------------------
DTA RIGHT*.TGA /CHR LEFT*.TGA /RED
Another way to make a red/blue 3D .FLI file. Use the red portion
of the left pictures for the red component of the output, use the
green and blue portions of the right pictures unmodified. The
resulting images retain much of their original color even when
viewed through funny glasses.
----------------------------------------------------------------------
DTA XXX*.TGA /L YYY*.TGA /CHA ZZZ*.TGA
This is a fun one... Create an animation with three sets
of pictures. The ones called XXX*.TGA are the background,
and the YYY*.TGA pictures are the foreground. But,
the ZZZ*.TGA pictures are used for the alpha channel of
the foreground, dictating which parts of the YYY pictures
will be transparent and how much (dark parts of ZZZ will
make YYY very transparent, while bright parts will be less
so.
----------------------------------------------------------------------
DTA XXX* /FTYY /AA
Make input from .TGAs beginning with "XXX".
Average all files.
Output to a new Targa file called "YY.TGA".
----------------------------------------------------------------------
DTA XXX*.TGA /T3 /DO3 /OZZZ
Make input from all .TGA files beginning with "XXX"
Trail 3 frames.
Use ordered dithering, strength 3.
Output an animation called "ZZZ.FLI"
----------------------------------------------------------------------
DTA XXX*.TGA /X3
Make input from all .TGA files beginning with "XXX"
Expand 3. Assuming 5 .TGA input files, this would create a 15 frame
animation.
Output an animation called "ANIM.FLI"
----------------------------------------------------------------------
DTA *.PCX
Creates a file called ANIM.FLI or ANIM.FLC from all .PCX files in the
current directory. (The extension depends on the resolution of the
first picture. If it's 320 by 200, then DTA will create a .FLI
file. Otherwise, it'll create a .FLC.
----------------------------------------------------------------------
DTA *.TGA /K2 /C2
Assuming 60 .TGA files, create a flic containing only 30 frames.
Generate the palette from only 15 frames.
----------------------------------------------------------------------
DTA *.PCX /R320,200 /SC
Create a flic from a bunch of PCX files, set the screen size
to 320 by 200, and rescale all the images to the screen size.
----------------------------------------------------------------------
DTA *.TGA /R6 /SC320,240
Create a 640x480 FLC file from a bunch of TGA files. Rescale each
picture so that the width is depth is 240, but leave the width alone.
This one is useful when you want to turn a bunch of 320x200
pictures into a 640x480 flic... because 320x200 screens use a
different aspect ratio than 640x480. 320x200 pictures look a
bit squat when you display them in 640x480 mode, but 320x240 looks
correct.
----------------------------------------------------------------------
DTA FLIC1.FLI FLIC2.FLI /OFLIC3
Create a new flic by appending two existing flics. Unlike my old
FLAP program, DTA will create a new palette.
----------------------------------------------------------------------
DTA FLIC.FLI /FP /NM
Create PCX files from the frames in FLIC.FLI. The /NM tells DTA
*not* to generate an optimized palette. That would be a waste of
time, since a FLIC file usually contains an optimized palette.
----------------------------------------------------------------------
DTA FLIC.FLI /SC120,100 /ROT90 /ONEWFLIC /R1 /NM
Read an existing flic, scale each of the frames to a 100x100
square, rotate the result 90 degrees to the right, and
create a new flic. (The /R1 tells DTA to make a 320x200
.FLI file instead of a 100x120 .FLC file. The little 100x120
square gets placed in the middle of the screen.
----------------------------------------------------------------------
DTA FLIC.FLI /SC100,100 /ROT0,0 /ROT360,100 /ONEWFLIC /R1
This one is much like the last example, but a bit funkier.
The first frame (0%) will be rotated 0 degrees (not at all).
The last frame (100%) will be rotated 360 degrees (a complete
rotation). The frames in between will be rotated in imcrements
between 0 and 360 degrees. (If you had 362 frames in the
animation, then the second frame would be rotated 1 degree,
the second 2 degrees, etc.)
Note we did *not* use the /NM switch to turn off palette
optimization. Scaling and rotation *require* that the palette
be remapped because the processes create new colors.
On the other hand, fast scaling (/SCF) and 90-degree
rotations do not require an optimized palette.
----------------------------------------------------------------------
DTA FLIC.FLI /SC100,100 /ROT0,0 /ROT180,66.666 /ROT360,100 /ONF /R1
Not quite the same as the last example. Instead of rotating
the frames at a constant rate the rotation starts slowly, until
at two-thirds (66.666%) of the way through the images have rotated
180 degrees. The rotation speeds up so that by the time it hits
finishes (100%), it's completed a full rotation.
----------------------------------------------------------------------
DTA BACKUP.ZIP:FLIC.FLI:20 /CL110,120,90,80 /FT
Read frame 20 of a flic that's stored in a ZIP file.
Clip a 90x80-pixel square from location 100,120 of the image
and save it as a TGA file.
----------------------------------------------------------------------
DTA *.TGA /TO15
Create a flic from a bunch of .TGA files. When comparing
pictures to produce delta frames in a flic, ignore color
differences that are less than 15 units in color-space.
The resulting flic won't look as good, but it will be smaller
and will play more quickly. This trick works better on
digitized video than it does with computer-generated
images.
----------------------------------------------------------------------
DTA *.TGA /TO15 /TX5
This works much like the last example, but every fifth frame
in the resulting flic will use a tolerance of 0.
======================================================================
Credits:
To create palettes and select colors from palettes, this
program uses the median cut quantization, using code from
Lutz Kretzschmar (of SoftTronics).
DTA's alternate color quantization method, called octree
quantization and called with the /RO command-line switch,
I found in an article called "A Simple Method for Color Quantization:
Octree Quantization," by Michael Gervautz and Werner Purgathofer,
which can be found in a book called "Graphics Gems," edited by
Andrew S. Glassner. I recommend this book highly.
I got my first intro to the .FLI format was a document included
with Jim Kent's FLILIB. Autodesk has sincce updated this doc
to create a file called ANIFILES.DOC which includes .FLC info.
Even more thanks to Jim Kent for the FLC info he gave me online
at BIX.
Thanks to Borland International and TurboPower Software for
creating some great programming tools.
Thanks to Dan Farmer, Alexander Enzmann, Jeff Bowermaster,
Lutz Kretzschar, Tim Wegner, John Jordan, and many others
for their excellent suggestions and other contributions.
Thanks to Dan Farmer for sprucing up this documentation
file a couple versions back.
Thanks to the Cafe Pamplona in Harvard Square for being such
a cool place to swill coffee and discuss ray-tracing and animation.
======================================================================
Disclaimer:
If you use DTA, you do so at your own risk. I won't be held
responsible if it screws anything up. I don't think it will,
but stranger things have happened. If you don't agree
to this, then don't use it.
======================================================================
Support:
If you've got any requests/bug reports/suggestions, send a message
to:
"76546,1321" on Compuserve. From the Internet, that's
"76546.1321@compuserve.com".
You'll probably get some kind of a response (maybe sooner, maybe
later)